{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "name": "Wine Quality Prediction.ipynb",
      "provenance": [],
      "authorship_tag": "ABX9TyNNcAFqn6FW+9ZMXtpb9xCx",
      "include_colab_link": true
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    },
    "language_info": {
      "name": "python"
    }
  },
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "view-in-github",
        "colab_type": "text"
      },
      "source": [
        "<a href=\"https://colab.research.google.com/github/SarraChebaane/Machine-Learning-Projects-for-Beginners/blob/main/Wine_Quality_Prediction.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 2,
      "metadata": {
        "id": "_3ZLPpkMQ7u7"
      },
      "outputs": [],
      "source": [
        "import numpy as np\n",
        "import pandas as pd\n",
        "import matplotlib.pyplot as plt \n",
        "import seaborn as sns \n",
        "from sklearn.model_selection import train_test_split \n",
        "from sklearn.ensemble import RandomForestClassifier\n",
        "from sklearn.metrics import accuracy_score"
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "Data Collection "
      ],
      "metadata": {
        "id": "oksYCH-yScMI"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "# loading the dataset to a Pandas DataFrame\n",
        "wine_dataset = pd.read_csv('/content/winequality-red.csv')"
      ],
      "metadata": {
        "id": "Q0eUCj8sSeGg"
      },
      "execution_count": 3,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "# number of rows & columns in the dataset\n",
        "\n",
        "wine_dataset.shape"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "TNG-XqrBSv9Y",
        "outputId": "510fa6bf-1150-4302-9852-b5312c4f4dd3"
      },
      "execution_count": 4,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "(1599, 12)"
            ]
          },
          "metadata": {},
          "execution_count": 4
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# first 5 rows of the dataset\n",
        "wine_dataset.head()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 305
        },
        "id": "yvbvaRqxS6Kb",
        "outputId": "06963bbe-494f-479f-fc97-04f0b65f290b"
      },
      "execution_count": 6,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "   fixed acidity  volatile acidity  citric acid  residual sugar  chlorides  \\\n",
              "0            7.4              0.70         0.00             1.9      0.076   \n",
              "1            7.8              0.88         0.00             2.6      0.098   \n",
              "2            7.8              0.76         0.04             2.3      0.092   \n",
              "3           11.2              0.28         0.56             1.9      0.075   \n",
              "4            7.4              0.70         0.00             1.9      0.076   \n",
              "\n",
              "   free sulfur dioxide  total sulfur dioxide  density    pH  sulphates  \\\n",
              "0                 11.0                  34.0   0.9978  3.51       0.56   \n",
              "1                 25.0                  67.0   0.9968  3.20       0.68   \n",
              "2                 15.0                  54.0   0.9970  3.26       0.65   \n",
              "3                 17.0                  60.0   0.9980  3.16       0.58   \n",
              "4                 11.0                  34.0   0.9978  3.51       0.56   \n",
              "\n",
              "   alcohol  quality  \n",
              "0      9.4        5  \n",
              "1      9.8        5  \n",
              "2      9.8        5  \n",
              "3      9.8        6  \n",
              "4      9.4        5  "
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-a86eb935-382e-46c4-be6a-115e1613447b\">\n",
              "    <div class=\"colab-df-container\">\n",
              "      <div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>fixed acidity</th>\n",
              "      <th>volatile acidity</th>\n",
              "      <th>citric acid</th>\n",
              "      <th>residual sugar</th>\n",
              "      <th>chlorides</th>\n",
              "      <th>free sulfur dioxide</th>\n",
              "      <th>total sulfur dioxide</th>\n",
              "      <th>density</th>\n",
              "      <th>pH</th>\n",
              "      <th>sulphates</th>\n",
              "      <th>alcohol</th>\n",
              "      <th>quality</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>7.4</td>\n",
              "      <td>0.70</td>\n",
              "      <td>0.00</td>\n",
              "      <td>1.9</td>\n",
              "      <td>0.076</td>\n",
              "      <td>11.0</td>\n",
              "      <td>34.0</td>\n",
              "      <td>0.9978</td>\n",
              "      <td>3.51</td>\n",
              "      <td>0.56</td>\n",
              "      <td>9.4</td>\n",
              "      <td>5</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>7.8</td>\n",
              "      <td>0.88</td>\n",
              "      <td>0.00</td>\n",
              "      <td>2.6</td>\n",
              "      <td>0.098</td>\n",
              "      <td>25.0</td>\n",
              "      <td>67.0</td>\n",
              "      <td>0.9968</td>\n",
              "      <td>3.20</td>\n",
              "      <td>0.68</td>\n",
              "      <td>9.8</td>\n",
              "      <td>5</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>7.8</td>\n",
              "      <td>0.76</td>\n",
              "      <td>0.04</td>\n",
              "      <td>2.3</td>\n",
              "      <td>0.092</td>\n",
              "      <td>15.0</td>\n",
              "      <td>54.0</td>\n",
              "      <td>0.9970</td>\n",
              "      <td>3.26</td>\n",
              "      <td>0.65</td>\n",
              "      <td>9.8</td>\n",
              "      <td>5</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>11.2</td>\n",
              "      <td>0.28</td>\n",
              "      <td>0.56</td>\n",
              "      <td>1.9</td>\n",
              "      <td>0.075</td>\n",
              "      <td>17.0</td>\n",
              "      <td>60.0</td>\n",
              "      <td>0.9980</td>\n",
              "      <td>3.16</td>\n",
              "      <td>0.58</td>\n",
              "      <td>9.8</td>\n",
              "      <td>6</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>7.4</td>\n",
              "      <td>0.70</td>\n",
              "      <td>0.00</td>\n",
              "      <td>1.9</td>\n",
              "      <td>0.076</td>\n",
              "      <td>11.0</td>\n",
              "      <td>34.0</td>\n",
              "      <td>0.9978</td>\n",
              "      <td>3.51</td>\n",
              "      <td>0.56</td>\n",
              "      <td>9.4</td>\n",
              "      <td>5</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>\n",
              "      <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-a86eb935-382e-46c4-be6a-115e1613447b')\"\n",
              "              title=\"Convert this dataframe to an interactive table.\"\n",
              "              style=\"display:none;\">\n",
              "        \n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "       width=\"24px\">\n",
              "    <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n",
              "    <path d=\"M18.56 5.44l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94zm-11 1L8.5 8.5l.94-2.06 2.06-.94-2.06-.94L8.5 2.5l-.94 2.06-2.06.94zm10 10l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94z\"/><path d=\"M17.41 7.96l-1.37-1.37c-.4-.4-.92-.59-1.43-.59-.52 0-1.04.2-1.43.59L10.3 9.45l-7.72 7.72c-.78.78-.78 2.05 0 2.83L4 21.41c.39.39.9.59 1.41.59.51 0 1.02-.2 1.41-.59l7.78-7.78 2.81-2.81c.8-.78.8-2.07 0-2.86zM5.41 20L4 18.59l7.72-7.72 1.47 1.35L5.41 20z\"/>\n",
              "  </svg>\n",
              "      </button>\n",
              "      \n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      flex-wrap:wrap;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "      <script>\n",
              "        const buttonEl =\n",
              "          document.querySelector('#df-a86eb935-382e-46c4-be6a-115e1613447b button.colab-df-convert');\n",
              "        buttonEl.style.display =\n",
              "          google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "        async function convertToInteractive(key) {\n",
              "          const element = document.querySelector('#df-a86eb935-382e-46c4-be6a-115e1613447b');\n",
              "          const dataTable =\n",
              "            await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                     [key], {});\n",
              "          if (!dataTable) return;\n",
              "\n",
              "          const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "            '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "            + ' to learn more about interactive tables.';\n",
              "          element.innerHTML = '';\n",
              "          dataTable['output_type'] = 'display_data';\n",
              "          await google.colab.output.renderOutput(dataTable, element);\n",
              "          const docLink = document.createElement('div');\n",
              "          docLink.innerHTML = docLinkHtml;\n",
              "          element.appendChild(docLink);\n",
              "        }\n",
              "      </script>\n",
              "    </div>\n",
              "  </div>\n",
              "  "
            ]
          },
          "metadata": {},
          "execution_count": 6
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# checking for missing values\n",
        "wine_dataset.isnull().sum()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "vhoNg0UbTPUa",
        "outputId": "3dd6e679-108a-4827-e5f0-5bdaf9a202ed"
      },
      "execution_count": 9,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "fixed acidity           0\n",
              "volatile acidity        0\n",
              "citric acid             0\n",
              "residual sugar          0\n",
              "chlorides               0\n",
              "free sulfur dioxide     0\n",
              "total sulfur dioxide    0\n",
              "density                 0\n",
              "pH                      0\n",
              "sulphates               0\n",
              "alcohol                 0\n",
              "quality                 0\n",
              "dtype: int64"
            ]
          },
          "metadata": {},
          "execution_count": 9
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# statistical measures of the dataset \n",
        "wine_dataset.describe()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 399
        },
        "id": "T4gFugD1T5iW",
        "outputId": "8866a085-80b3-4de9-ba33-5d64fd8ea10e"
      },
      "execution_count": 10,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "       fixed acidity  volatile acidity  citric acid  residual sugar  \\\n",
              "count    1599.000000       1599.000000  1599.000000     1599.000000   \n",
              "mean        8.319637          0.527821     0.270976        2.538806   \n",
              "std         1.741096          0.179060     0.194801        1.409928   \n",
              "min         4.600000          0.120000     0.000000        0.900000   \n",
              "25%         7.100000          0.390000     0.090000        1.900000   \n",
              "50%         7.900000          0.520000     0.260000        2.200000   \n",
              "75%         9.200000          0.640000     0.420000        2.600000   \n",
              "max        15.900000          1.580000     1.000000       15.500000   \n",
              "\n",
              "         chlorides  free sulfur dioxide  total sulfur dioxide      density  \\\n",
              "count  1599.000000          1599.000000           1599.000000  1599.000000   \n",
              "mean      0.087467            15.874922             46.467792     0.996747   \n",
              "std       0.047065            10.460157             32.895324     0.001887   \n",
              "min       0.012000             1.000000              6.000000     0.990070   \n",
              "25%       0.070000             7.000000             22.000000     0.995600   \n",
              "50%       0.079000            14.000000             38.000000     0.996750   \n",
              "75%       0.090000            21.000000             62.000000     0.997835   \n",
              "max       0.611000            72.000000            289.000000     1.003690   \n",
              "\n",
              "                pH    sulphates      alcohol      quality  \n",
              "count  1599.000000  1599.000000  1599.000000  1599.000000  \n",
              "mean      3.311113     0.658149    10.422983     5.636023  \n",
              "std       0.154386     0.169507     1.065668     0.807569  \n",
              "min       2.740000     0.330000     8.400000     3.000000  \n",
              "25%       3.210000     0.550000     9.500000     5.000000  \n",
              "50%       3.310000     0.620000    10.200000     6.000000  \n",
              "75%       3.400000     0.730000    11.100000     6.000000  \n",
              "max       4.010000     2.000000    14.900000     8.000000  "
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-75ac56bd-3f9c-46e8-a991-35e10ce4c160\">\n",
              "    <div class=\"colab-df-container\">\n",
              "      <div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>fixed acidity</th>\n",
              "      <th>volatile acidity</th>\n",
              "      <th>citric acid</th>\n",
              "      <th>residual sugar</th>\n",
              "      <th>chlorides</th>\n",
              "      <th>free sulfur dioxide</th>\n",
              "      <th>total sulfur dioxide</th>\n",
              "      <th>density</th>\n",
              "      <th>pH</th>\n",
              "      <th>sulphates</th>\n",
              "      <th>alcohol</th>\n",
              "      <th>quality</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>count</th>\n",
              "      <td>1599.000000</td>\n",
              "      <td>1599.000000</td>\n",
              "      <td>1599.000000</td>\n",
              "      <td>1599.000000</td>\n",
              "      <td>1599.000000</td>\n",
              "      <td>1599.000000</td>\n",
              "      <td>1599.000000</td>\n",
              "      <td>1599.000000</td>\n",
              "      <td>1599.000000</td>\n",
              "      <td>1599.000000</td>\n",
              "      <td>1599.000000</td>\n",
              "      <td>1599.000000</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>mean</th>\n",
              "      <td>8.319637</td>\n",
              "      <td>0.527821</td>\n",
              "      <td>0.270976</td>\n",
              "      <td>2.538806</td>\n",
              "      <td>0.087467</td>\n",
              "      <td>15.874922</td>\n",
              "      <td>46.467792</td>\n",
              "      <td>0.996747</td>\n",
              "      <td>3.311113</td>\n",
              "      <td>0.658149</td>\n",
              "      <td>10.422983</td>\n",
              "      <td>5.636023</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>std</th>\n",
              "      <td>1.741096</td>\n",
              "      <td>0.179060</td>\n",
              "      <td>0.194801</td>\n",
              "      <td>1.409928</td>\n",
              "      <td>0.047065</td>\n",
              "      <td>10.460157</td>\n",
              "      <td>32.895324</td>\n",
              "      <td>0.001887</td>\n",
              "      <td>0.154386</td>\n",
              "      <td>0.169507</td>\n",
              "      <td>1.065668</td>\n",
              "      <td>0.807569</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>min</th>\n",
              "      <td>4.600000</td>\n",
              "      <td>0.120000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.900000</td>\n",
              "      <td>0.012000</td>\n",
              "      <td>1.000000</td>\n",
              "      <td>6.000000</td>\n",
              "      <td>0.990070</td>\n",
              "      <td>2.740000</td>\n",
              "      <td>0.330000</td>\n",
              "      <td>8.400000</td>\n",
              "      <td>3.000000</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>25%</th>\n",
              "      <td>7.100000</td>\n",
              "      <td>0.390000</td>\n",
              "      <td>0.090000</td>\n",
              "      <td>1.900000</td>\n",
              "      <td>0.070000</td>\n",
              "      <td>7.000000</td>\n",
              "      <td>22.000000</td>\n",
              "      <td>0.995600</td>\n",
              "      <td>3.210000</td>\n",
              "      <td>0.550000</td>\n",
              "      <td>9.500000</td>\n",
              "      <td>5.000000</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>50%</th>\n",
              "      <td>7.900000</td>\n",
              "      <td>0.520000</td>\n",
              "      <td>0.260000</td>\n",
              "      <td>2.200000</td>\n",
              "      <td>0.079000</td>\n",
              "      <td>14.000000</td>\n",
              "      <td>38.000000</td>\n",
              "      <td>0.996750</td>\n",
              "      <td>3.310000</td>\n",
              "      <td>0.620000</td>\n",
              "      <td>10.200000</td>\n",
              "      <td>6.000000</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>75%</th>\n",
              "      <td>9.200000</td>\n",
              "      <td>0.640000</td>\n",
              "      <td>0.420000</td>\n",
              "      <td>2.600000</td>\n",
              "      <td>0.090000</td>\n",
              "      <td>21.000000</td>\n",
              "      <td>62.000000</td>\n",
              "      <td>0.997835</td>\n",
              "      <td>3.400000</td>\n",
              "      <td>0.730000</td>\n",
              "      <td>11.100000</td>\n",
              "      <td>6.000000</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>max</th>\n",
              "      <td>15.900000</td>\n",
              "      <td>1.580000</td>\n",
              "      <td>1.000000</td>\n",
              "      <td>15.500000</td>\n",
              "      <td>0.611000</td>\n",
              "      <td>72.000000</td>\n",
              "      <td>289.000000</td>\n",
              "      <td>1.003690</td>\n",
              "      <td>4.010000</td>\n",
              "      <td>2.000000</td>\n",
              "      <td>14.900000</td>\n",
              "      <td>8.000000</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>\n",
              "      <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-75ac56bd-3f9c-46e8-a991-35e10ce4c160')\"\n",
              "              title=\"Convert this dataframe to an interactive table.\"\n",
              "              style=\"display:none;\">\n",
              "        \n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "       width=\"24px\">\n",
              "    <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n",
              "    <path d=\"M18.56 5.44l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94zm-11 1L8.5 8.5l.94-2.06 2.06-.94-2.06-.94L8.5 2.5l-.94 2.06-2.06.94zm10 10l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94z\"/><path d=\"M17.41 7.96l-1.37-1.37c-.4-.4-.92-.59-1.43-.59-.52 0-1.04.2-1.43.59L10.3 9.45l-7.72 7.72c-.78.78-.78 2.05 0 2.83L4 21.41c.39.39.9.59 1.41.59.51 0 1.02-.2 1.41-.59l7.78-7.78 2.81-2.81c.8-.78.8-2.07 0-2.86zM5.41 20L4 18.59l7.72-7.72 1.47 1.35L5.41 20z\"/>\n",
              "  </svg>\n",
              "      </button>\n",
              "      \n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      flex-wrap:wrap;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "      <script>\n",
              "        const buttonEl =\n",
              "          document.querySelector('#df-75ac56bd-3f9c-46e8-a991-35e10ce4c160 button.colab-df-convert');\n",
              "        buttonEl.style.display =\n",
              "          google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "        async function convertToInteractive(key) {\n",
              "          const element = document.querySelector('#df-75ac56bd-3f9c-46e8-a991-35e10ce4c160');\n",
              "          const dataTable =\n",
              "            await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                     [key], {});\n",
              "          if (!dataTable) return;\n",
              "\n",
              "          const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "            '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "            + ' to learn more about interactive tables.';\n",
              "          element.innerHTML = '';\n",
              "          dataTable['output_type'] = 'display_data';\n",
              "          await google.colab.output.renderOutput(dataTable, element);\n",
              "          const docLink = document.createElement('div');\n",
              "          docLink.innerHTML = docLinkHtml;\n",
              "          element.appendChild(docLink);\n",
              "        }\n",
              "      </script>\n",
              "    </div>\n",
              "  </div>\n",
              "  "
            ]
          },
          "metadata": {},
          "execution_count": 10
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# number of valueas for each quality \n",
        "\n",
        "sns.catplot(x='quality',data= wine_dataset,kind='count')"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 386
        },
        "id": "Shpy2BWsUUsM",
        "outputId": "dbdad487-ebf3-453a-e6c6-3b79eeb955a9"
      },
      "execution_count": 11,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "<seaborn.axisgrid.FacetGrid at 0x7f8032d5fad0>"
            ]
          },
          "metadata": {},
          "execution_count": 11
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 360x360 with 1 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {
            "needs_background": "light"
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# volatile acidity vs quality \n",
        "plot = plt.figure(figsize=(5,5))\n",
        "sns.barplot(x='quality', y = 'volatile acidity',data=wine_dataset)\n"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 351
        },
        "id": "DZ0AKQhdVJqA",
        "outputId": "4b3cd0c5-2b86-4bec-a2c2-fd684afd4d47"
      },
      "execution_count": 12,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "<matplotlib.axes._subplots.AxesSubplot at 0x7f8032efbd10>"
            ]
          },
          "metadata": {},
          "execution_count": 12
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 360x360 with 1 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {
            "needs_background": "light"
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# citric acid vs quality \n",
        "plot = plt.figure(figsize=(5,5))\n",
        "sns.barplot(x='quality', y = 'citric acid',data=wine_dataset)\n"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 351
        },
        "id": "y8bFwTcqVxYb",
        "outputId": "a1376f54-2e49-4912-d66a-2bf2fda544d9"
      },
      "execution_count": 13,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "<matplotlib.axes._subplots.AxesSubplot at 0x7f8032bfd250>"
            ]
          },
          "metadata": {},
          "execution_count": 13
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 360x360 with 1 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {
            "needs_background": "light"
          }
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "Correlation"
      ],
      "metadata": {
        "id": "Ppve8SXYWQQy"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "1. Positive Correlation\n",
        "2. Negative Correlation\n"
      ],
      "metadata": {
        "id": "uedA1mJPWYm2"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "correlation = wine_dataset.corr()"
      ],
      "metadata": {
        "id": "Wk60AGD8WM-u"
      },
      "execution_count": 14,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "# contructing a heatmao to understand the correlations between the columns\n",
        "plt.figure(figsize=(10,10))\n",
        "sns.heatmap(correlation, cbar=True , square=True, fmt = '.1f',annot = True , annot_kws={'size':8}, cmap = 'Blues')"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 668
        },
        "id": "ENH4YIGKWh-9",
        "outputId": "97e5f032-754a-44d9-df06-232d280d2aea"
      },
      "execution_count": 20,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "<matplotlib.axes._subplots.AxesSubplot at 0x7f802fb46350>"
            ]
          },
          "metadata": {},
          "execution_count": 20
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 720x720 with 2 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {
            "needs_background": "light"
          }
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "Data Preprocessing"
      ],
      "metadata": {
        "id": "kZKQ-7pGfLZL"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "# separate the data and Label\n",
        "X= wine_dataset.drop('quality',axis=1)"
      ],
      "metadata": {
        "id": "ZZEDnhoUfNs5"
      },
      "execution_count": 21,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "print(X)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "fgdWmgbofWzL",
        "outputId": "9372e852-eea6-4dc0-f085-21af45d46b55"
      },
      "execution_count": 22,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "      fixed acidity  volatile acidity  citric acid  residual sugar  chlorides  \\\n",
            "0               7.4             0.700         0.00             1.9      0.076   \n",
            "1               7.8             0.880         0.00             2.6      0.098   \n",
            "2               7.8             0.760         0.04             2.3      0.092   \n",
            "3              11.2             0.280         0.56             1.9      0.075   \n",
            "4               7.4             0.700         0.00             1.9      0.076   \n",
            "...             ...               ...          ...             ...        ...   \n",
            "1594            6.2             0.600         0.08             2.0      0.090   \n",
            "1595            5.9             0.550         0.10             2.2      0.062   \n",
            "1596            6.3             0.510         0.13             2.3      0.076   \n",
            "1597            5.9             0.645         0.12             2.0      0.075   \n",
            "1598            6.0             0.310         0.47             3.6      0.067   \n",
            "\n",
            "      free sulfur dioxide  total sulfur dioxide  density    pH  sulphates  \\\n",
            "0                    11.0                  34.0  0.99780  3.51       0.56   \n",
            "1                    25.0                  67.0  0.99680  3.20       0.68   \n",
            "2                    15.0                  54.0  0.99700  3.26       0.65   \n",
            "3                    17.0                  60.0  0.99800  3.16       0.58   \n",
            "4                    11.0                  34.0  0.99780  3.51       0.56   \n",
            "...                   ...                   ...      ...   ...        ...   \n",
            "1594                 32.0                  44.0  0.99490  3.45       0.58   \n",
            "1595                 39.0                  51.0  0.99512  3.52       0.76   \n",
            "1596                 29.0                  40.0  0.99574  3.42       0.75   \n",
            "1597                 32.0                  44.0  0.99547  3.57       0.71   \n",
            "1598                 18.0                  42.0  0.99549  3.39       0.66   \n",
            "\n",
            "      alcohol  \n",
            "0         9.4  \n",
            "1         9.8  \n",
            "2         9.8  \n",
            "3         9.8  \n",
            "4         9.4  \n",
            "...       ...  \n",
            "1594     10.5  \n",
            "1595     11.2  \n",
            "1596     11.0  \n",
            "1597     10.2  \n",
            "1598     11.0  \n",
            "\n",
            "[1599 rows x 11 columns]\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "Label Binarization"
      ],
      "metadata": {
        "id": "CLv5PnnpffU7"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "Y = wine_dataset['quality'].apply(lambda y_value: 1 if y_value>=7 else 0)"
      ],
      "metadata": {
        "id": "X9g4g0J0fbYB"
      },
      "execution_count": 24,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "print(Y)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "0uAQyEsHgECQ",
        "outputId": "7434aa02-7ab3-4e35-faac-e206f76ef25d"
      },
      "execution_count": 25,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "0       0\n",
            "1       0\n",
            "2       0\n",
            "3       0\n",
            "4       0\n",
            "       ..\n",
            "1594    0\n",
            "1595    0\n",
            "1596    0\n",
            "1597    0\n",
            "1598    0\n",
            "Name: quality, Length: 1599, dtype: int64\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "Train & Test Split"
      ],
      "metadata": {
        "id": "VVfnD7ycgIJs"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "X_train,X_test,Y_train,Y_test = train_test_split(X,Y,test_size=0.2,random_state=3)"
      ],
      "metadata": {
        "id": "9jcHg0cogHMk"
      },
      "execution_count": 26,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "print(Y.shape,Y_train.shape,Y_test.shape)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "BnwjIys0giOe",
        "outputId": "1c2c9fae-f7f6-4a28-c9dc-094aafa66d9e"
      },
      "execution_count": 27,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "(1599,) (1279,) (320,)\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "Model Training "
      ],
      "metadata": {
        "id": "qSFQeMaSgqXR"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "Random Forest Classifier"
      ],
      "metadata": {
        "id": "lBDTPX0agviP"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "model = RandomForestClassifier()"
      ],
      "metadata": {
        "id": "tOvSbZ56g1D0"
      },
      "execution_count": 28,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "model.fit(X_train,Y_train)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "mchAobTUhiJt",
        "outputId": "0aa8fc5d-fb19-4891-9bf1-19c20f53ca61"
      },
      "execution_count": 29,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "RandomForestClassifier()"
            ]
          },
          "metadata": {},
          "execution_count": 29
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "Model Evaluation"
      ],
      "metadata": {
        "id": "mYSlOGALhtCa"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "Accuracy Score"
      ],
      "metadata": {
        "id": "GbsuUDsghv4t"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "# accuracy on test data\n",
        "X_test_prediction = model.predict(X_test)\n",
        "test_data_accuracy = accuracy_score(X_test_prediction,Y_test)"
      ],
      "metadata": {
        "id": "ZArAyegghsNy"
      },
      "execution_count": 33,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "print('Accuracy : ',test_data_accuracy)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "_Pg0coyeiSzQ",
        "outputId": "1463c8ee-88c7-4666-fb94-7ed0d12034c2"
      },
      "execution_count": 34,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Accuracy :  0.934375\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "Building a Predictive System"
      ],
      "metadata": {
        "id": "MGOIjrp9ijWA"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "input_data = (7.4,0.7,0.0,1.9,0.076,11.0,34.0,0.9978,3.51,0.56,9.4)\n",
        "\n",
        "# changing the input to a numpy array\n",
        "input_data_as_numpy_array = np.asarray(input_data)\n",
        "\n",
        "input_data_reshaped = input_data_as_numpy_array.reshape(1,-1)\n",
        "\n",
        "prediction = model.predict(input_data_reshaped)\n",
        "print(prediction)\n",
        "\n",
        "if (prediction[0]==1):\n",
        "  print('Good Quality Wine')\n",
        "else :\n",
        "  print('Bad Quality Wine')\n"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "rnbT8GDoimge",
        "outputId": "655b1a43-9dc1-44b9-df05-144729bf020a"
      },
      "execution_count": 40,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "[0]\n",
            "Bad Quality Wine\n"
          ]
        },
        {
          "output_type": "stream",
          "name": "stderr",
          "text": [
            "/usr/local/lib/python3.7/dist-packages/sklearn/base.py:451: UserWarning: X does not have valid feature names, but RandomForestClassifier was fitted with feature names\n",
            "  \"X does not have valid feature names, but\"\n"
          ]
        }
      ]
    }
  ]
}